class BaseServer  {

	constructor() {

	}

	/**
	 * 根据键值获取数据
	 * @param obj 需要获取的对象
	 * @param {[String]} keys 键值数据
	 */
	static getJson(obj, keys) {
		const json = {}
		keys.forEach((key) => {
			json[key] = obj[key]
		})
		return json
	}

	/**
	 * 添加到回收站
	 * @param ctx 环境上下文
	 * @returns {Promise<*>}
	 */
	static async dustbin_push (ctx) {
		return await this.mongo.dustbin_push(ctx.vals.id)
	}

	/**
	 * 从回收站还原
	 * @param ctx 环境上下文
	 * @returns {Promise<*>}
	 */
	static async dustbin_pop (ctx) {
		return await this.mongo.dustbin_pop(ctx.vals.id)
	}

	/**
	 * 获取回收站所有数据
	 * @param ctx 环境上下文
	 * @returns {Promise<*>}
	 */
	static async dustbin_all () {
		return await this.mongo.findDustbin()
	}
}

module.exports = BaseServer
